
--白名单数组
local White = require("config.white")

--检查session是否起作用。
local Check = {}


--检查session是否存在
--@param key session 的键名
--@return bool true/false ,result  返回结果，存在 true 和 该session的值，不存在false 和 nil
function Check:session(key,action,cname)
    local need_check = true
    --处理白名单
    for k, v in pairs(White) do
        if v.controller_name == cname and v.action_name == action then
            need_check = false
        end
    end

    --开始检查session，返回true证明是白名单 或者 有session，其他情况返回false
    if need_check then
        local session = require "resty.session".open({ secret = "623q4hR325t36VsCD3g567922IC0073T" })
        local result = session.data[key]
        if not result then
            return false,nil
        end
        return true,result
    end

    --不用检查，返回true
    return true,nil
end

return Check